<?php

/** 
 * Retorna um grafico especificado pelo tipo passado como parametro, ou todos
 * os graficos. 
 */
function relatorio_grafico($tipo) {
	// gfx = grafico
	$gfx_status 			= array('#chart_id' => 'gfx_status');
	$gfx_curso 				= array('#chart_id' => 'gfx_curso');
	$gfx_campus				= array('#chart_id' => 'gfx_campus');
	$gfx_modalidade 	= array('#chart_id' => 'gfx_modalidade');
	$gfx_condicao    	= array('#chart_id' => 'gfx_condicao');

	// o tipo vai dizer qual grafico sera renderizado
	switch($tipo) {
		case 'status':
			$gfx_status = gfx_status();break;
			
		case 'curso':
			$gfx_curso = gfx_curso();break;
				
		case 'campus':
			$gfx_campus = gfx_campus();break;
				
		case 'modalidades':
			$gfx_modalidade = gfx_modalidade();break;
				
		case 'condicao':
			$gfx_condicao = gfx_condicao();break;
				
		default: // todos
			$gfx_status = gfx_status();
			$gfx_curso = gfx_curso();
			$gfx_campus = gfx_campus();
			$gfx_modalidade = gfx_modalidade();
			$gfx_condicao = gfx_condicao();
			break;
	}

	$grafico = theme('chart', array('chart' => $gfx_condicao) )
	.theme('chart', array('chart' => $gfx_campus) )
	.theme('chart', array('chart' => $gfx_modalidade) )
	.theme('chart', array('chart' => $gfx_curso) );

	return $grafico;
}

/**
 * gera o grafico dos alunos separados entre bolsistas ativos e ou inativos
 */
function gfx_status() {
	$cores 		 = array('00BFFF','0000CD');
	$ativos    = count(relatorios_getStatusBolsas(1));
	$inativos  = count(relatorios_getStatusBolsas(0));

	$chart = array (
			'#chart_id' 	=> 'gfx_status',
			'#title' 			=> chart_title(t('Bolsistas Ativos/Inativos'), '363636', 20),
			'#type' 			=> CHART_TYPE_PIE,
			'#size' 			=> chart_size(600,300),
	  	'#chart_fill' => chart_fill('bg', 'f4f7e700'),
	);

	$chart['#data']['Ativos']  	= $ativos;
	$chart['#data']['Inativos'] = $inativos;

	$chart['#labels'][] = t(count($ativos));
	$chart['#labels'][] = t($inativos);

	$chart['#data_colors'][] = $cores[0];
	$chart['#data_colors'][] = $cores[1];

	$chart['#legends'][] = t('ATIVOS');
	$chart['#legends'][] = t('INATIVOS');

	return $chart;
}

/** */
function gfx_condicao() {
	$cores_estado = array('00BFFF','0000CD');
	$ativos    =  count(selecionar_por_estado(1));
	$inativos  =  count(selecionar_por_estado(0));

	$chart = array(
			'#chart_id' => 'grafico_por_estado',
			'#title' => chart_title(t('Total de Bolsista por Status'), '363636', 20),
			'#type' => CHART_TYPE_PIE,
			'#size' => chart_size(600,300),
	  '#chart_fill' => chart_fill('bg', 'f4f7e700'),
	);

	$chart['#data']['Ativos']  = $ativos;
	$chart['#data']['Inativos'] = $inativos;

	$chart['#labels'][] = t(count(selecionar_por_estado(1)));
	$chart['#labels'][] = t($inativos);

	$chart['#data_colors'][] = $cores_estado[0];
	$chart['#data_colors'][] = $cores_estado[1];

	$chart['#legends'][] = t('ATIVOS');
	$chart['#legends'][] = t('INATIVOS');

	return $chart;
}

/** */
function gfx_curso() {
	$cores_cursos = array('669900','006400','66CC00','009900','33CC00','00CC99','66CCCC','6699FF','00CCFF',
			'006699','6633CC','6666CC','333366','330066','660099','663366','990066','CC0066','FF0066'
			,'FF0000','CC3300','993300','663300','CC6633','CC9966','999900');
	$cores_cursos=array_reverse($cores_cursos);
	$bolsistas_curso  =  bolsistas_curso();
	$chart = array(
			'#chart_id' => 'grafico_por_cursos',
			'#title' => chart_title(t('Total de Bolsista por Curso'), '363636', 20),
			'#type' => CHART_TYPE_PIE,
			'#size' => chart_size(975,300),
	  '#chart_fill' => chart_fill('bg', 'f4f7e700'),
	);

	$cursos  =array_keys($bolsistas_curso);
	foreach ($cursos as $i){
		$chart['#data'][$i]  = count($bolsistas_curso[$i]);
	}
	foreach ($cursos as $i){
		$chart['#labels'][] = count($bolsistas_curso[$i]).'/'.$i;
	}


	$count=0;
	foreach ($cursos as $i){
		$chart['#data_colors'][] = $cores_cursos[$count];
		$count++;
	}


	return $chart;
}

/** */
function gfx_campus() {
	$cores_campus = array('CC3300','CCA32A','B22222');
	$bolsistas_campus  =  bolsistas_campus();

	$chart = array(
			'#chart_id' => 'grafico_por_campus',
			'#title' => chart_title(t('Total de Bolsista por Campus'), '363636', 20),
			'#type' => CHART_TYPE_PIE,
			'#size' => chart_size(600,300),
	  '#chart_fill' => chart_fill('bg', 'f4f7e700'),
	);

	$campus  =array_keys($bolsistas_campus);
	foreach ($campus as $i){
		$chart['#data'][$i]  = count($bolsistas_campus[$i]);
	}
	foreach ($campus as $i){
		$chart['#labels'][] = count($bolsistas_campus[$i]);
	}
	$count=0;
	foreach ($campus as $i){
		$chart['#data_colors'][] = $cores_campus[$count];
		$count++;
	}

	foreach ($campus as $i){
		$chart['#legends'][] = t($i);
	}

	return $chart;
}

/** */
function gfx_modalidade() {
	$cores_modalidades = array('669900','006400','66CC00','009900','33CC00','00CC99','66CCCC','6699FF','00CCFF',
			'006699','6633CC','6666CC','333366','330066','660099','663366','990066','CC0066','FF0066'
			,'FF0000','CC3300','993300','663300','CC6633','CC9966','999900','333300','336633','336600','333333','006699');
	$bolsistas_modalidades  =  bolsistas_modalidades();

	$chart = array(
			'#chart_id' => 'grafico_por_modalidades',
			'#title' => chart_title(t('Total de Bolsista por Modalidades'), '363636', 20),
			'#type' => CHART_TYPE_PIE,
			'#size' => chart_size(600,300),
	  '#chart_fill' => chart_fill('bg', 'f4f7e700'),
	);

	$modaliades  =array_keys($bolsistas_modalidades);
	foreach ($modaliades as $i){
		$chart['#data'][$i]  = count($bolsistas_modalidades[$i]);
	}
	foreach ($modaliades as $i){
		$chart['#labels'][] = count($bolsistas_modalidades[$i]);
	}


	$count=0;
	foreach ($modaliades as $i){
		$chart['#data_colors'][] = $cores_modalidades[$count];
		$count++;
	}

	foreach ($modaliades as $i){
		$chart['#legends'][] = t($i);
	}

	return $chart;
}